// 单独的store 多个
import { defineStore } from "pinia";
import useUser from "./user";


// id标识 区分store  自动被index pinia管理啦，不用引入
const useCounter = defineStore('counter', {
    state: () => ({
        count: 99,
        friends: [
            { id: 111, name: 'why' },
            { id: 111, name: 'haha' },
            { id: 111, name: 'xixi' }
        ]
    }),
    getters: {
        // 1,基本使用
        doubleCount(state) {
            return state.count * 2
        },
        // 2,一个getter使用另一个getter
        doubleCountAddOne() {
            // this store实例
            return this.doubleCount + 1
        },
        // 3,getters也支持返回一个函数
        getFriendById(state) {
            return function (id) {
                // return state.friends.find()
                for (let i = 0; i < state.friends.length; i++) {
                    const friend = state.friends[i];
                    if(friend.id===id){
                        return friend
                    }
                }
            } 
        },
        // 4,用到别的store中的数据
        showMessage(state){
            // 直接引入store 文件 创建实例即可
           const userStore= useUser()
           return `name:${userStore.name}-${state.count}`
        }
    },
    actions:{
        // 没有state 是参数
        increment(num){
           
            // this.count++
            this.count+=num
        }
    }
})
// 返回的是一个函数 使用
// const counterStore=useCounter()
export default useCounter
// defineStore('user',{

// })
// defineStore('home',{

// })